Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] ID periferica USB
Forum - C# / VB.NET - [VB.NET] ID periferica USB

Avatar
swet (Normal User)
Pro


Messaggi: 128
Iscritto: 01/01/2009

Segnala al moderatore
Postato alle 12:52
Venerdì, 15/01/2010
Salve a tutti, è tutta la mattina che cerco ma purtroppo non ho trovato molto, avrei bisogno di ricavare il serial number delle pendrive usb , quello univoco, sto provando con :
Codice sorgente - presumibilmente VB.NET

  1. Dim search3 As New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")
  2. Dim info As ManagementObject
  3. For Each info In search3.Get()
  4. If info("SerialNumber") Is Nothing Then
  5. txt = "Non presente"
  6. Else
  7. txt = info("SerialNumber").ToString()
  8. End If
  9. finale="Hard Disk ID: " & txt
  10. Next


Però mi trova solo il seriale dell' harddisk.

Usando il programma di WMI CODE CREATOR , ho trovato che dovrei cambiare il codice così:
SELECT * FROM Win32_DiskDrive",,48

Solo che quel 48 non gli va proprio giù, se lo ometto mi evidenzia
Salve a tutti, è tutta la mattina che cerco ma purtroppo non ho trovato molto, avrei bisogno di ricavare il serial number delle pendrive usb , quello univoco, sto provando con :
Codice sorgente - presumibilmente Plain Text

  1. txt = info("SerialNumber").ToString()


E mi dice:" NON TROVATO".

Potete aiutarmi?

Grazie

Ultima modifica effettuata da swet il 15/01/2010 alle 14:24
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6406
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 14:16
Venerdì, 15/01/2010
L'informazione sul seriale per le due classi è la medesima.

Molto probabilmente quel device USB *non* espone il seriale.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
swet (Normal User)
Pro


Messaggi: 128
Iscritto: 01/01/2009

Segnala al moderatore
Postato alle 14:50
Venerdì, 15/01/2010
Ciao, ho provato con due pendrive e il risultato è il medesimo. Documentandomi ho trovato questo codice in C# :
Codice sorgente - presumibilmente VB.NET

  1. //import the System.Management namespace at the top in your "using" statement. Then in a method, or on a button click:
  2.  
  3. ManagementObjectSearch theSearcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'");
  4. foreach (ManagementObject currentObject in theSearcher.Get())
  5. {
  6.    ManagementObject theSerialNumberObjectQuery = new ManagementObject("Win32_PhysicalMedia.Tag='" + currentObject["DeviceID"] + "'");
  7.    MessageBox.Show(theSerialNumberObjectQuery["SerialNumber"].ToString());
  8. }



Che in Vb.Net dovrebbe essere così:
Codice sorgente - presumibilmente VB.NET

  1. 'import the System.Management namespace at the top in your "using" statement. Then in a method, or on a button click:
  2. Dim theSearcher As ManagementObjectSearch = New ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'")
  3. For Each currentObject As ManagementObject In theSearcher.[Get]()
  4.     Dim theSerialNumberObjectQuery As New ManagementObject("Win32_PhysicalMedia.Tag='" & currentObject("DeviceID") & "'")
  5.     MessageBox.Show(theSerialNumberObjectQuery("SerialNumber").ToString())
  6. Next



Ma non va, mi segnala theSerialNumberObjectQuery :
Codice sorgente - presumibilmente VB.NET

  1. Risoluzione dell'overload non riuscita perché nessun 'New' accessibile può essere chiamato senza una conversione verso un tipo di dati più piccolo:
  2.     'Public Sub New(path As String)': Il parametro 'path' corrispondente all'argomento viene convertito da 'Object' a 'String', più piccolo.
  3.     'Public Sub New(path As System.Management.ManagementPath)': Il parametro 'path' corrispondente all'argomento viene convertito da 'Object' a 'System.Management.ManagementPath', più piccolo.



Cosa manca?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6406
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:02
Venerdì, 15/01/2010
Forse non mi sono spiegato prima ...

Tu hai *mai* visto il seriale di quei device (con altri software) ?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
swet (Normal User)
Pro


Messaggi: 128
Iscritto: 01/01/2009

Segnala al moderatore
Postato alle 15:09
Venerdì, 15/01/2010
Ciao, "purtroppo" hai ragione tu, ho provato anche altri programmi ma il seriale non viene visto in nessuna delle due pendrive. C'è qualcos' altro di univoco che si può estrarre dalla pendrive?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6406
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:14
Venerdì, 15/01/2010
Testo quotato

Postato originariamente da swet:

Ciao, "purtroppo" hai ragione tu, ho provato anche altri programmi ma il seriale non viene visto in nessuna delle due pendrive. C'è qualcos' altro di univoco che si può estrarre dalla pendrive?



No ... e comunque non da *tutte* le pendrive ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote